﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace eCampusWeb
{
    public partial class AsignaturaMuro : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                // Modifica el bt de la master
                Master.modificaColor("btMuro");

                string asig = Request.QueryString["codigo"];

                if (asig == null || asig == "")
                {
                    Response.Redirect("~/Default.aspx");
                }

                //Carga muro
                ListView2.DataSource = new Librerias.EN.ENMuro().GetMuro(asig);
                ListView2.DataBind();

                if (Session["correo"]== null || Session["correo"].ToString() == "")
                {
                    TextBox1.Visible = false;
                    Button1.Visible = false;
                }
            }
            else
            {

                if (Request.Form["__EVENTTARGET"] != null &&
                    Request.Form["__EVENTTARGET"] == "BORRAR")
                {
                    Borrar(Request.Form["__EVENTARGUMENT"]);
                }

                lbError.Text = "";


            }
        }


        public void Comentar(object sender, EventArgs e)
        {
            try
            {
                Librerias.EN.ENMuro en = new Librerias.EN.ENMuro();

                en.AddEntrada(Session["correo"].ToString(), Request.QueryString["codigo"], TextBox1.Text);

                ListView2.DataSource = en.GetMuro(Request.QueryString["codigo"]);
                ListView2.DataBind();
            
                TextBox1.Text = "";
            }
            catch
            {
                lbError.Text = "No se pudo crear el mensaje";
            }
        }

        public void MasUno(object sender, EventArgs e)
        {
            try
            {
                string id = ((ImageButton)sender).CommandArgument;

                new Librerias.EN.ENPuntos().MasUno("M" + id, Session["correo"].ToString());


                Response.Redirect("~/AsignaturaMuro.aspx?codigo=" + HttpUtility.HtmlEncode(Request.QueryString["codigo"]));
                //Carga muro
                // ListView2.DataSource = new Librerias.EN.ENMuro().GetMuro(Request.QueryString["codigo"]);
                //ListView2.DataBind();
            }
            catch (Exception)
            {
                lbError.Text = "ERROR: No puedes votar dos veces el mismo comentario. ";
            }
        }

        public void MenosUno(object sender, EventArgs e)
        {
            try
            {
                string id = ((ImageButton)sender).CommandArgument;

                new Librerias.EN.ENPuntos().MenosUno("M" + id, Session["correo"].ToString());

                Response.Redirect("~/AsignaturaMuro.aspx?codigo=" + HttpUtility.HtmlEncode(Request.QueryString["codigo"]));
                //Carga muro
                // ListView2.DataSource = new Librerias.EN.ENMuro().GetMuro(Request.QueryString["codigo"]);
                //ListView2.DataBind();
            }
            catch (Exception)
            {
                lbError.Text = "ERROR: No puedes votar dos veces el mismo comentario. ";
            }
        }


        public void Borrar(string id)
        {
            new Librerias.EN.ENMuro().DeleteEntrada(id,Session["correo"].ToString());
            Response.Redirect("~/AsignaturaMuro.aspx?codigo=" + Request.QueryString["codigo"]);
        }
    }
}